Method and apparatus for access point selection in wireless LAN

ABSTRACT

A method and an apparatus select an access point (AP) in a wireless LAN to associate or reassociate, based on considerations that take into account the quality-of-service (QoS) status of the stations (STAs) and the potential hidden terminal effect. The method utilizes advertised or requested information obtained from an AP which includes the QoS status in each basic service set (BSS) and estimates the potential hidden terminal (HT) effect based on local channel sensing by the STA. The method selects the AP in a manner that reduces the possibility of collision from equal and higher priority HTs, thus providing greater transmission throughput and improving performance.

CROSS REFERENCE TO RELATED APPLICATIONS

The present patent application is related to and claims priority of U.S.Provisional Patent Application (“Provisional Application”), entitled“Method and Apparatuses for Access Point Selection in Wireless LAN,” byD. Lei et al., Ser. No. 60/862,873, filed on Oct. 25, 2006. TheProvisional patent application is hereby incorporated by reference inits entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is related to mobile computing. In particular, thepresent invention is related to methods for providing an efficientinfrastructure for mobile computing.

2. Discussion of the Related Art

A typical prior art wireless local area network (WLAN) is configured toprovide a number of access points (APs) interconnected by and to anethernet backbone. Each AP provides network access over a service areathat is referred to as a “basic service set” (ESS) in the IEEE standardIEEE 802.11¹. The service areas of the APs in a typical WLAN arepreferably overlapping to allow a seamless coverage and to providecapacity enhancement where the APs overlap. In a WLAN, a mobile user orstation (STA) scans frequently for candidate channels to identify APsfor association. Since the media access control (MAC) throughputperformance under the IEEE 802.11 depends significantly on the BSS load(e.g. the number of associated stations), a strategy for selecting an APin an effective manner is important. ¹ IEEE Std. 802.11, “Wireless LANMedia Access Control (MAC) and Physical Layer (PHY) Specifications,”1999.

In the meantime, as the use of multimedia services (e.g., voice, video,and web browsing) in a heterogeneous environment continues toproliferate, WLANs need to provide higher transmission rates and atlower costs. As each type of service has a different specificquality-of-service (QoS) requirement, WLAN standards now provide servicedifferentiation by assigning services to different access categories andaccording to user priorities (see, e.g., service categories under theIEEE standard IEEE 802.11e²). Because different services may co-exist ina WLAN, an effective AP selection method should take into considerationthe service type and access priority. ² IEEE Computer Society, “Part 11:Wireless LAN Medium Access Control (MAC) and physical Layer (PHY)specifications: Medium Access Control (MAC) enhancements for Quality ofService (QoS)”, IEEE Std. 802.11e/D1.4, 2001

Various studies have been made to improve AP selection. The most commonand simplest approach is based on received signal strength (RSS)measurements. An STA, upon entering the service area of a WLAN or upondetecting degradation in its existing link, scans each candidate channeland estimates the RSS of the received frames from the available APs. Thegoal of selecting the AP with the strongest RSS is to access a higherquality channel and at a higher data rate. This method results in alarger admission capacity in a WLAN. While an RSS-based selection methodappears to provide a maximum data transmission rate to each STA, such amethod ignores the contention-based nature in WLAN access. When STAsgather around one AP, an RSS-based method tends to cause trafficaggregation in some BSSs and severe frame collisions, thereby resultingin throughput degradation.

AP selection methods have also been studied as a possible efficient wayto achieve load balancing among different BSSs. For example, in thearticle “Performance of an efficient method for association admissioncontrol in public wireless LAN,” by Hyun-woo Lee, Se-han Kim and WonRyu, and published in the Vehicular Technology Conference (VTC), Fall,2004, the authors suggest taking BSS load levels of the stations, andtheir traffic, into account in an AP selection method. Under thatmethod, an AP inserts into one or more reserved fields of beacon orprobe response frames values representing their BSS load or traffic, soas to allow the STA to select an AP with a light load and to avoidtraffic congestion. Similarly, in the article “A Novel Load SensitiveAlgorithm for AP selection in 4G Networks” by S. Misra and A. Banerjee,published in the International Conference of Computer and Devices forCommunication (CODEC), Calcutta, India, 2003, the authors propose anassociation algorithm which further considers an STA's movement, inaddition to the load level. The STA's direction of movement allows an APwith a light load along that direction to be selected. While theseload-balancing methods may alleviate traffic imbalance between adjacentBSSs to some extent, neither the number of STAs nor the amount oftraffic is an accurate measure of the load level.

The Chinese patent application “Method and Apparatus to select AP inWLAN,” serial no., 200610110741.0, filed on Aug. 8, 2007, discloses amethod for AP selection which enhances total performance by taking intoaccount hidden terminals that may cause much severe throughputdegradation. Under that method, the STA avoids collisions with hiddenterminals by anticipating their effects in their respective BSSs.

Other proposals present more precise load estimates to allow APselection. For example, the article “Facilitating access point selectionin IEEE 802.11 wireless networks,” by S. Vasudevan, K. Papagiannaki, C.Diot, J. Kurose, and D. Towsley, published in ACM Internet MeasurementConf., New Orleans, La., October 2005, describes a method for an STA toestimate a potential bandwidth based on delays experienced by beaconframes received from an AP. In this method, the same access priority isassumed between beacon and other data frames, so that a channel statusmay be predicted from an offset between the timestamp of a beacon andthe target beacon transmission time (TBTT). However, using beacon delayfor bandwidth estimation assumes that the beacon frames experience thesame contention as other frames. In a WLAN, where the beacon frames aretypically sent prior to data frames, such an assumption is typically notvalid.

In addition, the article “Link Quality based Association Mechanism inIEEE 802.11h compliant Wireless LANs,” by T. Korakis et al, presented inthe Workshop on Resource Allocation in Wireless Networks (RAWNET), April2005, proposes considering the physical layer channel condition (e.g.,bi-directional link rate or other channel quality metrics on the uplinkand downlink) in selecting the AP to associate. However, these qualitymetrics (e.g., the bidirectional link rates) are available only forpoint coordination function (PCF) operation. Since PCF is not enabled inmost WLAN products, the Korakis method has limited applications.

SUMMARY OF THE INVENTION

According to one embodiment of the present invention, a method forselecting an AP in a WLAN having overlapping basic service sets (BSSs)improves both the total WLAN throughput and load balancing amongadjacent BSSs. The method uses AP selection to provide servicedifferentiation and to further enhance the performance of high priorityservices. In a BSS which includes multiple types of services, differentaccess rules govern different access categories. For example, a “besteffort” service may experience a longer delay before being allowed toaccess the channel than the delay experienced by a voice service, sincethe voice service is more sensitive to the delay characteristics.Therefore, when an STA that requires voice service selects an AP toaccess a WLAN, among APs with the same loads in their BSSs, the STAselects the AP having the least number of STAs that use services ofequal or higher priority than the voice service. In this manner, becausethe STA using the higher priority service preempts access opportunitiesof those STAs using lower priority services, the performance andthroughput of the higher priority service is improved.

According to another embodiment of the present invention, a methodselects an AP according to current service type and distribution inBSSs. In this method, APs notify STAs of its load status, expressed ineither channel utilization or STA count, for each kind of service the APsupports. A STA, upon receiving the information, scans the channel toestimate the potential hidden terminal effect arising from the STAs withan equal or higher access priority than itself. By selecting the AP withthe smallest potential hidden terminal effect, the STA is least likelyto be preempted an opportunity to transmit by other STAs that use highpriority services, while mitigating frame collisions with the hiddenterminals.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a WLAN to which a method of AP selection according tothe present invention is applicable.

FIG. 2 shows a Quality-of-service Basic Service Set (QBSS) load elementin a beacon, response frame or a management/Action frame, as specifiedunder the IEEE standard, IEEE 802.11e.

FIG. 3( a) shows proposed quality-of-service BSS (QBSS) load subelementsthat may be used in a beacon, a probe response or a management/actionframe transmitted by an AP, in accordance with one embodiment of thepresent invention.

FIG. 3( b) shows proposed load elements that may be used in a beacon,probe response or a management/action frame transmitted by an AP, inaccordance with one embodiment of the present invention.

FIG. 4 shows an alternative proposed QBSS load sub-element format thatcan be provided without lengthening the beacon or management frame, inaccordance with one embodiment of the present invention.

FIG. 5 (a) is an operation flow chart of an AP selection method,according to one embodiment of the present invention.

FIG. 5 (b) is an operation flow chart of an AP selection method,according to another embodiment of the present invention.

FIG. 6 shows implementation of the method of FIG. 5( a), according toone embodiment of the present invention.

FIG. 7 shows implementation of the method of FIG. 5( b), according toanother embodiment of the present invention.

FIG. 8( a) shows a BSS load sub-element proposed to be included in thebeacon, probe response or the management/action frame under anyembodiment of FIGS. 6, 7 and 9.

FIG. 8( b) shows another BSS load sub-element proposed to be included inthe beacon, probe response or management/action frames under anyembodiment of FIGS. 6, 7 and 9.

FIG. 9 shows implementation of the method of FIG. 5( a), according toyet another embodiment of the present invention.

FIG. 10 shows a BSS load element proposed to be included in the beacon,probe response or management/action frames under any embodiment of FIGS.6, 7 and 9.

FIG. 11 shows components within an STA to support an AP selection methodaccording to one embodiment of the present invention.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

The present invention provides a QoS-aware AP selection method in aWLAN. In one embodiment, the STA selects an AP which provides the leasthidden terminal effect from other STAs having equal or higher prioritiesrelative to the STA's own access category (AC).

FIG. 1 illustrates a WLAN 100 to which a method of AP selectionaccording to the present invention is applicable. As shown in FIG. 1,WLAN 100 includes at least access points, AP1 and AP2, which provideservice on different channels without co-channel interference. Coverageareas for access points AP1 and AP2 are overlapping, as indicated bycoverage areas 101 and 102 (in solid lines). Mobile terminals MT1, MT2and MT3, each using different qualities of services, access WLAN 100.For example, mobile terminal MT1 uses a voice-over-IP (VoIP) service,and is shown associated with access point AP1. Mobile terminal MT2, forexample, uses a “best effort (BE) service and is shown associated withaccess point AP2. Mobile terminal MT3, for example, may be another VoIPuser entering overlapping area 103 between coverage areas 101 and 102.In overlapping area 103, mobile terminal MT3 detects signals from bothaccess points AP1 and AP2. Mobile terminal MT3 may therefore select oneof the two access points AP1 and AP2 to associate, according to oneembodiment of the present invention.

FIG. 2 shows a Quality-of-service Basic Service Set (QBSS) load elementin a beacon or response frame, as specified under the IEEE standard,IEEE 802.11e. As shown in FIG. 2, (i) a “station count” field indicatesthe number of stations currently associated with this QBSS, (ii) a“channel utilization” field indicates the percentage of time, normalizedto 255, a QOS AP (QAP) senses the medium to be busy, as measured byeither a physical or a virtual carrier sense mechanism.

FIG. 5( a) is an operation flow chart 500 of an AP selection method,according to one embodiment of the present invention. As shown in FIG. 5(a), when a STA enters a WLAN or detects a link degradation in the WLAN,it requests or acquires BSS load information from a candidate AP in eachchannel (step 503), for ACs equal to or higher than its own AC. In FIG.5( a), the channels allocated to candidate APs are indexed by index k=1,. . . , N and the ACs are indexed by index i=1, . . . , m. In oneembodiment, m=4, corresponding respectively to access categories definedin IEEE 802.11e: voice (VO), video (VI), best effort (BE) and background(BK), indexed in decreasing priority order (i.e., the lower priorityservices are assigned the larger numbers). The STA's own AC index isdenoted by M For example, when M has the value 1, the STA is initiatinga VoIP service. The BSS load information for the k-th channel forpriority service i is denoted u_(ki), which may be extracted from thevalue of QBSS station count or channel utilization sub-elementcorresponding to AC_(i) in a beacon, a probe-response, or amanagement/action frame transmitted by the AP in the k-th channel.

Prior to requesting or acquiring the BSS load information, the methodinitializes the parameters k and u_(ki) (step 501). The default valuefor u_(ki) is −1, indicating that the BSS load information correspondingto AC_(i) for channel k has not been obtained. Possible quantities toderive u_(ki) include station count and channel utilization. FIG. 3( a)shows proposed quality-of-service BSS (QBSS) load sub-elements that maybe used in a beacon, a probe-response, or a management/action frametransmitted by an AP, in accordance with one embodiment of the presentinvention. Such QBSS sub-elements may appear in beacon frames, proberesponse frames or the neighbor report elements included in roamingmanagement frames. Sub-element 3-1 is the format for a QBSS stationcount sub-element, which includes (a) a station count bitmask fieldwhich indicates the ACs for which station counts are provided; and (b) astation count list, which lists the station counts. Each bit in thestation count bitmask that is set to ‘1’ corresponds to an AC for whicha station count is provided. The encoding for the bitmask for m=4 isshown in 3-3. The station count list provides a sequence of stationcount corresponding respectively to station counts for ACs indicated bythe station count bitmask. The station count may be provided, forexample, by the number of stations belonging to each corresponding ACcurrently associated with the QBSS.

Sub-element 3-2 is a format for a QBSS channel utilization sub-element,which includes (a) a channel utilization bitmask field which indicatesthe ACs for which channel utilization values are provided; and (b) achannel utilization list, which lists the channel utilization values.Channel utilization may be expressed, for example, by the percentage oftime (e.g., normalized to 255) the AP senses the medium busy, as aresult of channel utilization by STAs belonging to the corresponding AC.Channel utilization may be measured, for example, by either a physicalor a virtual carrier sense mechanism.

FIG. 4 shows an alternative proposed QBSS load sub-element format thatcan be provided without lengthening the beacon, the probe-response, orthe management/action frame, in accordance with one embodiment of thepresent invention. Such a sub-element is particularly beneficial for abeacon frame, which is desired to have minimal overhead. As shown inFIG. 4, sub-element 4-1 includes a station count field, which consistsof: (a) the station count for AC₁ (i.e., the number of VoIP STAscurrently associated with the QBSS); and (b) the number of STAs otherthan the STAs of AC₁. This format allows a VoIP STA to select an APusing the station count for AC₁, while another STA may use instead thetotal number of STAs in the QBSS (i.e., the sum of the two parts of thestation count field). Similarly, sub-element 4-2 illustrates thealternate format for expressing channel utilization as a channelutilization for AC₁, and channel utilization by all other STAsassociated with the QBSS.

Although in FIGS. 3 and 4 QBSS station count and QBSS channelutilization are each expressed as a “sub-element” of the QBSS loadelement shown in FIG. 2, QBSS station count and QBSS channel utilizationmay also be used as an independent information element, such as shown inFIG. 3( b). Returning to FIG. 5( a), in this embodiment, the N channelsare processed sequentially. While not all channels have been processed(step 502), the STA scans for or requests BSS load information (step503) from the k-th channel, specifying its own AC_(i) or another AC ofinterest. When the STA successfully obtains the BSS load information(step 504), the STA extracts the channel utilization or station countsub-element or elements according to the AC_(i) (i≦m) from the receivedframe. The STA then records or updates the values as u_(ki), asappropriate (505). Meanwhile, based on the RSS measurement of receivedframes, the STA estimates the maximum supportable data rate v_(k) inchannel k (step 506).

If the STA cannot obtain the BSS load information, the STA determineswhether or not such information has previously been recorded for thischannel k (i.e., all u_(ki) have the value of −1; step 511). If noinformation has been recorded for this channel k, the STA determines ifsufficient time has elapsed since the beginning of processing in thechannel (512). If the elapsed time has reached maximum scanning period,T_(max), STA sets the potential hidden terminal effect f_(k) for thek^(th) channel to a very large value (“infinity”), indicating that thechannel is currently unavailable (513). Otherwise, the STA returns tostep 503, to continue checking whether or not the BSS load informationis detected in channel k.

After the STA estimates the supportable data rate v_(k) (step 506), orif the current BSS load information cannot be obtained, but the BSS loadinformation has previously been recorded (i.e., after step 511), the STAdetermines whether or not the scanning period has exceeded the minimumrequired scanning period T_(min) (step 507). If so, the STA calculatesthe heard BSS load information r_(ki) for channel k and for eachrelevant AC_(i), i≦m (step 508). r_(ki) refers to the overheard numberof STAs corresponding to the relevant AC_(i), or the relevant channelutilization ratio (i.e. the percentage of time that the STA senses themedium busy due to the STAs corresponding to the relevant AC_(i), asindicated by either the physical or virtual carrier sense mechanism).The AC type of r_(ki) may be obtained, for example, by extracting the ACvalues from the QBSS field of overheard frames.

In one embodiment, to obtain the heard BSS load information, the mobileterminal senses the channel overhearing the received frames that are notdestined to itself, and extracts the identities and the ACs of thestations transmitting the frames. The heard BSS load may be representedby the number of stations with different identities persisting to eachAC that are overheard by the mobile terminal. Alternatively, the mobileterminal extracts the ACs of the stations transmitting the frames andaccumulates the channel time occupied by these frames in each AC. Theheard BSS load may be represented by these channel times. The parametersT_(min) and T_(max) controls the duration over which the mobile stationscans a channel and accumulates the heard BSS load. Based on activitiesduring the duration (i.e., for at least T_(min), but at most T_(max)),the mobile station determines the condition of the channel and whetheror not the channel is available. The setting of T_(min) may take intoaccount such parameters as the traffic load in the currently scannedchannel, and the beacon interval.

After the STA has obtained a set of (u_(ki), r_(ki), v_(k)), i≦m, forall N candidate channels, the STA calculates the potential hiddenterminal effect f_(k) for each channel k, which is given by:

$f_{k} = {\max\left( {0,{{L_{DATA}/v_{k}} \cdot {\sum\limits_{i = 1}^{M}\left( {u_{ki} - r_{ki}} \right)}}} \right)}$(step 509), where L_(DATA) is the average data length the STA is goingto transmit. The STA then examines all f_(k)'s and selects the AP withthe least f_(k) to associate or reassociate (step 514).

FIG. 5 (b) shows an operation flow chart 520 of an AP selection method,according to another embodiment of the present invention. In contrastwith FIG. 5 (a), step 521 replaces steps 506-509. That is, when the STArecords or updates the values as u_(ki), as appropriate (step 505), orwhen the BSS load information has previously been recorded for thischannel k (i.e., not all u_(ki) have the value of −1; step 511), the STAcalculates the load status that use services of equal or higher prioritythan the STA's AC, f_(k), for each channel k, which is given by: (step521)

$f_{k} = {\sum\limits_{i = 1}^{M}{u_{ki}.}}$The STA then examines all f_(k)'s and selects the AP with the leastf_(k) to associate or reassociate (step 514).

FIGS. 6, 7 and 9 illustrate the method of FIG. 5( a) in differentembodiments. The method of FIG. 5( b) is substantially the same as thatof FIG. 5( a), except that step 506-509 in FIG. 5( a) are replaced inFIG. 5( b) by step 521 of FIG. 5( b). In each of these embodiments, aBSS load sub-element or element is proposed to be included in thebeacon, the probe-response, or the management frames. FIG. 8-(a)illustrates using the formats of FIG. 3( a) in the embodiments of FIGS.6, 7 and 9. FIG. 8( b) illustrates using the formats as FIG. 4 in theembodiments of FIGS. 6, 7 and 9. FIG. 10 illustrates using the formatsof FIG. 3( b) to the embodiment of FIGS. 6, 7 and 9.

FIG. 6 shows application of the method of FIG. 5( a) for a STA operatingunder a passive scanning mode. The IEEE 802.11 standard defines passiveand active scanning modes for an STA to acquire synchronization in aWLAN. As shown in FIG. 6, under the passive mode, access points AP1 andAP2 periodically broadcast beacon frames containing BSS-specificinformation at a series of target beacon transmission times (TBTTs),which are separated by a fixed beacon interval. Transmission of thebeacon frame may be deferred if the channel is sensed busy at a TBTT,until the channel is sensed idle again. For this embodiment, any one ofthe BSS load sub-elements or elements proposed to be included in thebeacon frames shown in FIG. 8( a), FIG. 8( a) and FIG. 10 may be used.

As shown in FIG. 8( a), both the beacon and the probe-response framesmay contain a “QBSS load” field, which includes “station count” and“channel utilization” elements, similar to those specified in the IEEEstandard, IEEE 802.11e, shown in FIG. 2. In FIG. 8( a), however,“station count” values, “channel utilization” values, or both, are givenfor each AC, with the appropriate format adopted from the formats shownin FIG. 3. Depending on the implementation, it may not be necessary toprovide both “station count” and “channel utilization” values by ACs;nor, for overhead reasons, is it necessary to include the station countor channel utilization data for all ACs. For example, only higherpriority ACs (e.g., VO and VI) need be included in the beacon or proberesponse frames. The corresponding bits in the bitmask indicate whetherthe value for any specified AC is included.

Alternatively, the QBSS load sub-element of FIG. 8( b), which does notlengthen the beacon frame (relative to the existing standard) may beused. The QBSS load element of FIG. 8( b) takes the format explainedabove, with respect to FIG. 4. In this manner, the overhead associatedwith the beacon frame is not increased. This format is preferable underthe passive scanning mode. As shown in FIG. 8( b), a first part in theprevious QBSS load element provides the station count or channelutilization for a specified AC (e.g., AC₁, or VoIP), while the otherpart provides for same statistic for other ACs. Based on this beaconformat, VoIP STAs can be differentiated by calculating the potentialhidden terminal effect from VoIP STAs in this QBSS.

As shown in FIG. 6, at time T1, a VoIP STA enters the WLAN or detects alink degradation, a method for AP selection is triggered. The STAselects a channel (e.g. CH1) from its list of candidate channels tolisten to a beacon frame. At time T2, the STA successfully detects abeacon frame in CH1, and extracts the QBSS load information (i.e.,either the station count or channel utilization sub-element). In thisexample, the beacon provides values only for higher priority ACs (e.g.,u₁₁ and u₁₂, for VO and VI respectively). Meanwhile, the STA measuresthe signal strength of the received beacon and estimates the maximumsupported data rate on this channel as v₁.

After receiving the beacon frame at time T2, the STA determines whetheror not the elapsed scanning time in CH1 exceeds the minimum scanningtime T_(min). As the elapsed scanning time exceeds the minimum scanningtime T_(min), a heard BSS load r_(ki) is estimated for CH1. As only thesub-elements corresponding to the ACs equal or higher than the STA's ACare considered, r_(ki) includes only the number of VoIP STAs or thechannel utilization due to VoIP transmission. The same procedure is thenrepeated in candidate channel CH2.

At time T3, the STA successfully detects a beacon frame in channel CH2,and thereby obtains a set of BSS load information U2, and u22 and signalstrength-based data rate estimate v₂. As time T3 is within the minimumrequired scanning period T_(min), scanning continues in the channeluntil T_(min) is reached (i.e., until time T4). At time T4, the heardBSS load r₂₁, corresponding to the ACs equal or higher than that ofitself, is estimated.

As the STA has by time T4 scanned both candidate channels CH1 and CH2,the STA calculates the potential hidden terminal effect f_(k) for eachchannel using the information it has gathered for that channel duringchannel scanning. Since the STA uses the VoIP service, corresponding tothe highest AC, only VoIP STAs are considered in estimating thepotential hidden terminals effect (i.e. f_(k)=max(0,L_(DATA)/v_(k)·(u_(k1)−r_(k1))). In this example, f₂ is less than f₁,access point AP2 is selected. The STA hence associates or reassociateswith access point AP2.

FIG. 7 illustrates application of the method of FIG. 5( a) to a STAoperating under active scanning mode. In active scanning mode, unlikethe passive mode, the STA sends out probe messages to the candidatechannels. As seen from FIG. 7, a STA begins scanning channel CH1 (one oftwo candidate channels in its candidate channel list) at time T1 bysending a “probe request” frame (P_Req) which addresses access point AP1of channel CH1. Access point AP1, upon receiving the P_Req matching itsidentity at time T2, replies with a probe response frame (P_Res)enclosing BSS load information u₁₁ and u₁₂, using a frame format shownin any one of FIGS. 8( a), 8(b) and 10 (described above with respect tothe beacon frame of FIG. 6). Meanwhile, the maximum supported data ratev_(k) is estimated from the measured RSS of the P_Res frame. At time T3,the STA replies with an acknowledgement (ACK) frame to confirm thesuccessful reception of P_Res.

At time T4, the STA determines that the scanning period has exceededminimum scanning time T_(min), a heard BSS load r₁₁ is estimated,corresponding to ACs equal or higher priority than the STA's own AC(i.e., VoIP, in this example). The same procedure is then repeated forchannel CH2. In channel CH2, at time T6, as the scanning period does notexceed T_(min), the STA continues the scanning until time T7, when aheard BSS load r₂₁ may be estimated, having scanned for the minimumperiod T_(min). In the same manner as described above for FIG. 6, thehidden terminal effect f_(k) is estimated for each channel (i.e.,f_(k)=max(0, L_(DATA)/v_(k)·(u_(k1)−r_(k1))), taking into considerationonly the VoIP service, in this example). The AP with the lesser f_(k) isselected, according to the method of FIG. 5 (a).

FIG. 9 shows implementation of the method of FIG. 5( a), in which actionframes are used to convey the BSS load sub-elements or elements used inan AP selection, according to yet another embodiment of the presentinvention. Under this method, the STA and the AP exchange a series offrames enabling the roaming capability: “roaming management query” frame(R_M_Query), “roaming management request” frame (R_M_Req) and “roamingmanagement response” frame (R_M_Res). When a STA in a WLAN using a VoIPservice detects a link degradation, the STA reselects an AP so as tomaintain its access to the WLAN. The roaming management frames, definedin IEEE standard, IEEE 802.11v, draft³, may be used for obtaining theBSS load information from an AP. As shown in FIG. 9, at time T1, the STAsends to access point AP1 of channel CH1 a “roaming management query”frame to request information. Access point AP1, upon receiving the STA'sR_M_Query, replies at time T2 by a R_M_Req frame. In this R_M_Req frameis included a BSS load element, such as shown in FIG. 10. FIG. 10 showsa roaming management request frame that, other than including theproposed BSS load element, conforms substantially with the formatspecified in the IEEE 802.11v draft for this action frame, whichsupports a roaming function. The roaming management request frameincludes a “roaming candidate list entries” field, which contains one ofmore “neighbor report elements.” The neighbor report element includesthe proposed BSS load sub-element to support an AP selection methodaccording to the present invention. ³ P802.11v-D0.03

The BSS load element in the neighbor report element may take a format,for example, described in conjunction with FIG. 3 above. Upon receivingthe roaming management request frame, the STA extracts, for example, theBSS load information u₁₁ and u₁₂. At time T3, the STA sends a R_M_Resframe to acknowledge receipt of the R_M_Req frame. The frame sequence issimilar to the probe-response-acknowledgement sequence described abovewith respect to FIG. 7. Steps 506-510 of FIG. 5( a) are followedsubstantially in the same manner discussed with respect to FIGS. 6-7above. The same procedure is followed to collect BSS information inchannel CH2 from access point AP2. Access point selection based onselecting the access point at which the hidden terminal effect is leastis then followed, in substantially the same manner as described abovewith respect to FIGS. 6-7.

FIG. 11 shows components within STA 1100 provided to support an APselection method according to one embodiment of the present invention.As shown in FIG. 11, judgment or determination means 1101 comprisesprimarily a state machine to implement the steps of the method FIG. 5(a) or FIG. 5( b). BSS load request means 1102 perform channel scanning,in any of the passive or active scanning modes, and action frames toobtain the required BSS load sub-elements or elements (See, e.g., theimplementations of FIGS. 6, 7, 9), and also to obtain the heard BSS loadbased on the traffic in each monitored channel. Calculation and storagemeans 1103 records the required information for AP selection (e.g.,u_(ki), v_(k), r_(ki)) and calculates the corresponding f_(k)'s (i.e.

$\left. {f_{k} = {{{\max\left( {0,{{L_{DATA}/v_{k}} \cdot {\sum\limits_{i = 1}^{M}\left( {u_{ki} - r_{ki}} \right)}}} \right)}\mspace{14mu}{or}\mspace{14mu} f_{k}} = {\sum\limits_{i = 1}^{M}u_{ki}}}} \right).$AP selection means 1104 select an AP based on the f_(k) for all thecandidate i=1 channels, according to methods discussed above.Transmitting and receiving means 1105 transmit and receive frames fromthe radio interface.

The detailed description above is provided to illustrate the specificembodiments of the present invention and is not intended to be limiting.Numerous variations and modifications within the scope of the presentinvention are possible. The present invention is set forth in thefollowing claims.

1. A method for selecting an access point for a mobile station toassociate, comprising: in each of a plurality of channels: (i)obtaining, from an access point associated with the channel, loadinformation at the access point for each of a plurality of accesscategories; (ii) obtaining from the data packets transmitted by othermobile stations in the channel a measure of channel activity for eachaccess category; (iii) calculating a load metric based on the loadinformation and the measure of channel activity; and (iv) selecting theaccess point that is associated with the channel based on the loadmetrics among the channels.
 2. A method as in claim 1, furthercomprising: calculating a hidden terminal effect metric based on abandwidth requirement of the mobile station, the obtained measure ofchannel activity, and the load information; and wherein selecting theaccess point further include taking into consideration the calculatedhidden terminal effect metric.
 3. A method as in claim 1, wherein theload information is derived from beacon frames received at the mobilestation operating under a passive scanning mode.
 4. A method as in claim1, wherein the load information is derived from probe-requesttransactions conducted between the mobile station and the access pointaccording to an active scanning mode.
 5. A method as in claim 1, whereinthe load information is derived from administrative frames exchangedbetween the mobile station and the access point according to anadministrative function.
 6. A method as in claim 1, wherein the loadinformation comprises the numbers of mobile stations associated with theaccess point by access categories.
 7. A method as in claim 1, whereinthe load information comprises channel utilization measures by accesscategories.
 8. A method as in claim 1, wherein the load information isprovided as a combination of: a bitmask indicating the access categoriesrepresented, and a listing of the load information according to accesscategories.
 9. A method as in claim 1, wherein the load information isprovided as a combination of (i) load information pertaining to aspecified category, and (ii) load information pertaining to accesscategories other than the specified category.
 10. A method as in claim1, further comprising calculating a data rate based on the measuredsignal strength received in a transmission from the access point.
 11. Amethod as in claim 1, wherein the method takes into consideration loadinformation pertaining only to access categories that has an equal orhigher priority than an access category associated with the mobileterminal.
 12. A method as in claim 1, wherein the measure of channelactivity is obtained by: overhearing in the channel frames that are notaddressed to the mobile station; extracting from each overheard frame anidentity of a sending station and an associated access category; and foreach access category, accumulating a number of stations based on theidentities extracted; and providing the number of stations as themeasure of channel activity.
 13. A method as in claim 1, wherein themeasure of channel activity is obtained by: overhearing in the channelframes that are not addressed to the mobile station; extracting fromeach overheard frame an associated access category; and for each accesscategory, accumulating time durations of the frames associated with thataccess category; and providing the accumulated time as the measure ofchannel activity for the access category.
 14. The method of claim 1,wherein each channel is examined for a predetermined duration.
 15. Anapparatus in a mobile station for selecting an access point in awireless local area network (WLAN), comprising: BSS load request meansfor obtaining load information according to access categories from aplurality of access points associated with a plurality of channels andfor obtaining from overhearing frames transmitted from other mobilestations within each channel load information according to accesscategories; calculation and storage means calculating a load metricbased on the load information; access point selection means that selectsthe access point from the calculated load metric; and judgment means forcontrolling the operations of the load request means, the calculationand storage means, and the access point selection means according to anaccess point selection method.
 16. An apparatus as in claim 15, whereinthe calculation and storage means further performs (i) recording theload information obtained from the access points, (ii) recording theheard load information obtained from each channel; and (iii) calculatingfor each channel a hidden terminal effect based on the load information,the heard load information and a bandwidth requirement by the mobilestation; and wherein the access point selection means take intoconsideration the calculated hidden terminal effects.
 17. An apparatusas in claim 15, wherein the load information is derived from beaconframes received at the mobile station operating under a passive scanningmode.
 18. An apparatus as in claim 15, wherein the load information isderived from probe-request transactions conducted between the mobilestation and the access point according to an active scanning mode. 19.An apparatus as in claim 15, wherein the load information is derivedfrom administrative frames exchanged between the mobile station and theaccess point according to an administrative function.
 20. An apparatusas in claim 15, wherein the load information comprises the numbers ofmobile stations associated with the access point by access categories.21. An apparatus as in claim 15, wherein the load information compriseschannel utilization measures by access categories.
 22. An apparatus asin claim 15, wherein the load information is provided as a combinationof: (i) a bitmask indicating the access categories represented, and (ii)a listing of the load information according to access categories.
 23. Anapparatus as in claim 15, wherein the load information is provided as acombination of (i) load information pertaining to a specified category,and (ii) load information pertaining to access categories other than thespecified category.
 24. An apparatus as in claim 15, wherein thecalculation and storage means provide a data rate based on the measuredsignal strength received in a transmission from the access point.
 25. Anapparatus as in claim 15, wherein the calculation and storage meanstakes into consideration load information pertaining only to accesscategories that has an equal or higher priority than an access categoryassociated with the mobile terminal.
 26. An apparatus as in claim 15,wherein overhearing frames transmitted from other mobile stations withineach channel comprises: overhearing in the channel frames transmitted byother mobile stations in the channel that are not addressed to themobile station; extracting from each overheard frame an identity of asending station and an associated access category; and for each accesscategory, accumulating a number of stations based on the identitiesextracted; and providing the number of stations as observed loadinformation for the access category.
 27. An apparatus as in claim 15,wherein the heard load information is obtained by: overhearing in thechannel frames transmitted by other mobile stations in the channel thatare not addressed to the mobile station; extracting from each overheardframe an associated access category; and for each access category,accumulating time durations of the frames associated with that accesscategory; and providing the accumulated time as the observed loadinformation for the access category.
 28. The apparatus of claim 15,wherein each channel is examined for a predetermined duration.
 29. Asystem for allowing an efficient access point selection in a wirelesscomputer network, comprising: a plurality of access points of thewireless computer network having overlapping coverage areas operating ona plurality channels, each access point being configured to provide loadinformation regarding its channel by access categories; and a mobilestation configured to (i) receive at the overlapping coverage areas theload information by access categories from the access point; (ii) listento other mobile stations in each channel to obtain heard loadinformation of each channel by access categories; (iii) calculate a loadmetric for each channel based on the load information from the accesspoints and the heard load information; and (iv) select one of the accesspoint based on the calculated load metrics.
 30. A system as in claim 29,wherein the mobile station is further configured to (i) calculate ahidden terminal effect metric for each channel based on the loadinformation from the access points and the heard load information fromthe other mobile terminals; and (ii) when selecting one of the accesspoint, take into consideration the calculated hidden terminal effectmetrics.
 31. A system as in claim 29, wherein the load information isderived from beacon frames received at the mobile station operatingunder a passive scanning mode.
 32. A system as in claim 29, wherein theload information is derived from probe-request transactions conductedbetween the mobile station and the access point according to an activescanning mode.
 33. An system as in claim 29, wherein the loadinformation is derived from roaming management frames exchanged betweenthe mobile station and the access point according to a roaming function.34. A system as in claim 29, wherein the load information comprises thenumbers of mobile stations associated with the access point by accesscategories.